/**
 * Classe de gestion d'un joueur
 * @author Lo�c Mounier, Thomas Picard, Marianne Grandemenge
 */

package Modele;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.InetAddress;
import java.net.UnknownHostException;

public class Joueur {
	private String nom;
	private Puissance puissance;
	private boolean serveur;
	private InetAddress adr;
	private int port;

	public Joueur(String n, boolean server, String adresse, int port) {
		nom = n;
		this.port = port;
		this.serveur = server;
		try {
			adr = InetAddress.getByName(adresse);
		} catch (UnknownHostException e) {
			System.out.println("Erreur dans l'adresse serveur");
		}
	}

	public String getNom() {
		return nom;
	}

	public void setNom(String n) {
		nom = n;
	}

	public InetAddress getAdr() {
		return adr;
	}

	public void setAdr(InetAddress adr) {
		this.adr = adr;
	}

	public int getPort() {
		return port;
	}

	public void setPort(int port) {
		this.port = port;
	}

	public Puissance getPuissance() {
		return puissance;
	}

	public void setPuissance(Puissance p) {
		puissance = p;
	}

	public void sendMessage(String s) {
		s = this.nom + " : " + s;
		DatagramPacket packet = new DatagramPacket(s.getBytes(), s.length(),
				adr, port);
		packet.setData(s.getBytes());

		// Envoi de ce packet
		try {
			Partie.castSocket.send(packet);
		} catch (IOException e) {
			System.out.println("Erreur envoi message");
			e.printStackTrace();
		}
		packet = new DatagramPacket(s.getBytes(), s.length(), adr, port);
	}
}
